<!--
  ~ /*
  ~  *    Copyright 2020-2021 Luter.me
  ~  *
  ~  *    Licensed under the Apache License, Version 2.0 (the "License");
  ~  *    you may not use this file except in compliance with the License.
  ~  *    You may obtain a copy of the License at
  ~  *
  ~  *      http://www.apache.org/licenses/LICENSE-2.0
  ~  *
  ~  *    Unless required by applicable law or agreed to in writing, software
  ~  *    distributed under the License is distributed on an "AS IS" BASIS,
  ~  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~  *    See the License for the specific language governing permissions and
  ~  *    limitations under the License.
  ~  */
  -->

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title th:text="'ERROR - '+${status}">ERROR</title>
    <meta name="robots" content="noindex">
    <style>
        html, body {
            height: 100vh;
        }

        html:before, body:before {
            background: linear-gradient(#233581, #203075);
        }

        html {
            background: linear-gradient(#203075, #233581);
            overflow: hidden;
        }

        html:before {
            height: 105vmax;
            width: 105vmax;
            z-index: -4;
        }

        html:after {
            height: 80vmax;
            width: 80vmax;
            z-index: -3;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            color: #FFF;
            text-shadow: 0 30px 10px rgba(0, 0, 0, 0.15);
        }

        body:before {
            height: 60vmax;
            width: 60vmax;
            z-index: -2;
        }

        body:after {
            height: 40vmax;
            width: 40vmax;
            z-index: -1;
        }

        .main {
            text-align: left;
            z-index: 10;
        }

        p {
            font-size: 18px;
            margin-top: 0;
        }

        h1 {
            font-size: 95px;
            margin: 0;
        }

        .bubble {
            background: linear-gradient(#6876f5, #1d20ea);
            border-radius: 50%;
            box-shadow: 0 30px 15px rgba(0, 0, 0, 0.15);
            position: absolute;
        }

        .bubble:before, .bubble:after {
            content: "";
            background: linear-gradient(#6281f5, #1a33d6);
            border-radius: 50%;
            box-shadow: 0 30px 15px rgba(0, 0, 0, 0.15);
            position: absolute;
        }

        .bubble:nth-child(1) {
            top: 15vh;
            left: 15vw;
            height: 22vmin;
            width: 22vmin;
        }

        .bubble:nth-child(1):before {
            width: 13vmin;
            height: 13vmin;
            bottom: -25vh;
            right: -10vmin;
        }

        .bubble:nth-child(2) {
            top: 20vh;
            left: 38vw;
            height: 10vmin;
            width: 10vmin;
        }

        .bubble:nth-child(2):before {
            width: 5vmin;
            height: 5vmin;
            bottom: -10vh;
            left: -8vmin;
        }

        .bubble:nth-child(3) {
            top: 12vh;
            right: 30vw;
            height: 13vmin;
            width: 13vmin;
        }

        .bubble:nth-child(3):before {
            width: 3vmin;
            height: 3vmin;
            bottom: -15vh;
            left: -18vmin;
            z-index: 6;
        }

        .bubble:nth-child(4) {
            top: 25vh;
            right: 18vw;
            height: 18vmin;
            width: 18vmin;
        }

        .bubble:nth-child(4):before {
            width: 7vmin;
            height: 7vmin;
            bottom: -10vmin;
            left: -15vmin;
        }

        .bubble:nth-child(5) {
            top: 60vh;
            right: 18vw;
            height: 28vmin;
            width: 28vmin;
        }

        .bubble:nth-child(5):before {
            width: 10vmin;
            height: 10vmin;
            bottom: 5vmin;
            left: -25vmin;
        }
    </style>

</head>
<body>

<div class="bubble"></div>
<div class="bubble"></div>
<div class="bubble"></div>
<div class="bubble"></div>
<div class="bubble"></div>
<div class="main">
    <h1 th:text="${status}">404</h1>
    <p style="color: red;font-size: 32px" th:text="${error}">An error has occured, to continue:</p>
    <p style="font-size: 18px" th:text="${message}">message</p>
    <p style="font-size: 12px;font-weight: bold" th:text="${#dates.format(timestamp, 'yyyy-MM-dd hh:mm:ss')}">time</p>
    <a style="color: white;font-weight: 400;font-size: 18px" th:href="@{/login}">去登录</a>
    <a style="color: white;font-weight: 400;font-size: 18px;margin-left: 100px" th:href="@{/}">去首页</a>
</div>

</body>
</html>